const BasePage = require('../../pages/base')

Page(BasePage({
  data: {
    showBackToTop: false,
    scrollTop: 0
  },
  
  onLoad(options) {
    // 页面加载时的逻辑
    console.log('广告页面加载', options);
    
    // 获取设备信息设置适当的高度
    const systemInfo = wx.getSystemInfoSync();
    this.setData({
      windowHeight: systemInfo.windowHeight,
      windowWidth: systemInfo.windowWidth
    });
    
    // 添加埋点：记录用户访问广告页面
    this.trackEvent('view_advertisement', {
      source: options.source || '首页轮播图'
    });
  },
  
  onReady() {
    // 页面渲染完成
    console.log('广告页面渲染完成');
  },
  
  onPageScroll(e) {
    // 监听页面滚动，控制返回顶部按钮显示
    if (e.scrollTop > 200 && !this.data.showBackToTop) {
      this.setData({
        showBackToTop: true
      });
    } else if (e.scrollTop <= 200 && this.data.showBackToTop) {
      this.setData({
        showBackToTop: false
      });
    }
    
    // 记录当前滚动位置
    this.setData({
      scrollTop: e.scrollTop
    });
  },
  
  scrollToTop() {
    // 点击返回顶部按钮时滚动到页面顶部
    wx.pageScrollTo({
      scrollTop: 0,
      duration: 300
    });
    
    // 添加埋点：记录用户点击返回顶部按钮
    this.trackEvent('advertisement_scroll_to_top', {});
  },
  
  // 导航栏返回按钮点击事件处理
  onNavBack() {
    // 添加埋点：记录用户通过导航栏返回
    this.trackEvent('advertisement_nav_back', {});
    
    // 返回上一页
    wx.navigateBack({
      delta: 1,
      fail: () => {
        // 如果返回失败（例如没有上一页），则返回首页
        wx.switchTab({
          url: '/pages/index/index'
        });
      }
    });
  },
  
  // 图片加载错误处理
  onImageError(e) {
    console.error('海报图片加载失败', e);
    wx.showToast({
      title: '图片加载失败',
      icon: 'none'
    });
  },
  
  // 图片加载完成处理
  onImageLoad(e) {
    console.log('海报图片加载成功', e);
  },
  
  onShareAppMessage() {
    // 自定义分享信息
    return {
      title: '限时优惠活动',
      path: '/packageA/advertisement/index',
      imageUrl: '/images/poster_ad.jpg'
    };
  }
})) 